package com.twb.auth.entity.twbUser.vo;

import java.io.Serializable;
import java.util.List;

import javax.validation.constraints.NotBlank;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * @author DSY
 * @ClassName UpdateTwbUserByIdVo
 * @Description /sys/twbUser/updateById 入参对象
 * @date 2018年11月22日 下午6:06:45
 */
@ApiModel(value = "UpdateTwbUserByIdVo", description = "/sys/twbUser/updateById 入参对象")
public class UpdateTwbUserByIdVo implements Serializable {

  private static final long serialVersionUID = 1L;

  /**
   * 序号
   */
  @NotBlank
  private String id;
  /**
   * 租户ID
   */
  @ApiModelProperty(value = "租户ID")
  private String tenantId;
  /**
   * 登陆名称
   */
  private String loginName;

  /**
   * 登录密码
   */
  private String pwd;

  /**
   * 姓名
   */
  private String name;

  /**
   * 用户类型
   */
  private String userType;

  /**
   * 手机号码
   */
  private String phone;

  /**
   * 邮箱
   */
  private String mail;

  /**
   * 用户状态（0，失效；1，生效）
   */
  private String status;

  /**
   * 职务
   */
  @ApiModelProperty(value = "职务")
  private String position;

  /**
   * 微信openid
   */
  @ApiModelProperty(value = "openid")
  private String openid;

  /**
   * APP客户端唯一标识
   */
  private String clientId;

  /**
   * 企业微信用户ID
   */
  private String cpUserId;

  /**
   * 机构ID
   */
  private String orgId;

  /**
   * 角色集合
   */
  private List<TwbUserRoleVo> roles;

  /**
   * 岗位集合
   */
  private List<TwbUserPostVo> posts;


  @ApiModelProperty("数据权限类型（1：全部数据；2：本部门及以下数据；3：本部门数据；4：仅本人数据；5：自定义数据）")
  private String dataScopeType;

  /**
   * 自定义数据权限，使用该字段传递部门ID集合
   */
  @ApiModelProperty("自定义数据权限，使用该字段传递部门ID集合")
  private List<String> dataScopeIds;

  /** 直属主管 */
  @ApiModelProperty(value = "直属主管")
  private String directSupervisor;


  public String getId() {
    return id;
  }

  public void setId(String id) {
    this.id = id;
  }

  public String getTenantId() {
    return tenantId;
  }

  public void setTenantId(String tenantId) {
    this.tenantId = tenantId;
  }

  public String getLoginName() {
    return loginName;
  }

  public void setLoginName(String loginName) {
    this.loginName = loginName;
  }

  public String getPwd() {
    return pwd;
  }

  public void setPwd(String pwd) {
    this.pwd = pwd;
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public String getUserType() {
    return userType;
  }

  public void setUserType(String userType) {
    this.userType = userType;
  }

  public String getPhone() {
    return phone;
  }

  public void setPhone(String phone) {
    this.phone = phone;
  }

  public String getMail() {
    return mail;
  }

  public void setMail(String mail) {
    this.mail = mail;
  }

  public String getStatus() {
    return status;
  }

  public void setStatus(String status) {
    this.status = status;
  }

  public String getPosition() {
    return position;
  }

  public void setPosition(String position) {
    this.position = position;
  }

  public String getOpenid() {
    return openid;
  }

  public void setOpenid(String openid) {
    this.openid = openid;
  }

  public String getClientId() {
    return clientId;
  }

  public void setClientId(String clientId) {
    this.clientId = clientId;
  }

  public String getCpUserId() {
    return cpUserId;
  }

  public void setCpUserId(String cpUserId) {
    this.cpUserId = cpUserId;
  }

  public String getOrgId() {
    return orgId;
  }

  public void setOrgId(String orgId) {
    this.orgId = orgId;
  }

  public List<TwbUserRoleVo> getRoles() {
    return roles;
  }

  public void setRoles(List<TwbUserRoleVo> roles) {
    this.roles = roles;
  }

  public List<TwbUserPostVo> getPosts() {
    return posts;
  }

  public void setPosts(List<TwbUserPostVo> posts) {
    this.posts = posts;
  }

  public String getDataScopeType() {
    return dataScopeType;
  }

  public void setDataScopeType(String dataScopeType) {
    this.dataScopeType = dataScopeType;
  }

  public List<String> getDataScopeIds() {
    return dataScopeIds;
  }

  public void setDataScopeIds(List<String> dataScopeIds) {
    this.dataScopeIds = dataScopeIds;
  }

  public String getDirectSupervisor() {
    return directSupervisor;
  }

  public void setDirectSupervisor(String directSupervisor) {
    this.directSupervisor = directSupervisor;
  }
}
